Skip Headers

Oracle® Database SQL Reference 10g Release 2 (10.2) Part Number B14200-02 |
Home | Book List | Contents | Index | Master Index | Feedback

Previous | Next
| View PDF

# DECOMPOSE

Syntax

Description of the illustration decompose.gif

Purpose

`DECOMPOSE` is valid only for Unicode characters. `DECOMPOSE` takes as its argument a string in any datatype and returns a Unicode string after decomposition in the same character set as the input. For example, an o-umlaut code point will be returned as the "o" code point followed by an umlaut code point.

- `string` can be any of the datatypes `CHAR`, `VARCHAR2`, `NCHAR`, `NVARCHAR2`, `CLOB`, or `NCLOB`.

- `CANONICAL` causes canonical decomposition, which allows recomposition (for example, with the `COMPOSE` function) to the original string. This is the default.

- `COMPATIBILITY` causes decomposition in compatibility mode. In this mode, recomposition is not possible. This mode is useful, for example, when decomposing half-width and full-width katakana characters, where recomposition might not be desirable without external formatting or style information.

`CLOB` and `NCLOB` values are supported through implicit conversion. If `char` is a character LOB value, it is converted to a `VARCHAR` value before the `COMPOSE` operation. The operation will fail if the size of the LOB value exceeds the supported length of the `VARCHAR` in the particular development environment.

See Also: Oracle Database Globalization Support Guide for information on Unicode character sets and character semantics

Examples

The following example ss the string "`Châteaux`" into its component code points:

    SELECT DECOMPOSE ('Châteaux') FROM DUAL;

    DECOMPOSE
    ---------
    Cha^teaux

Note: The results of this example can vary depending on the character set of your operating system.